// pages/edit/edit.js
var utils = require('../../utils/utils.js')
const db = wx.cloud.database()
const birthday = db.collection('birthday')

Page({

  /**
   * 页面的初始数据
   */
  data: {
    date:'点击设置生日'
  },

  /**
   * 自定义函数--取消修改并返回上一页
   */
  cancelEdit: function () {
    wx.navigateBack()
  },

  /**
   * 自定义函数--更新页面上的出生日期
   */
  dateChange: function (e) {
    //console.log(e)
    this.setData({
      date:e.detail.value 
    })
  },

  /**
   * 自定义函数--提交表单
   */
  onSubmit: function (e) {
    //console.log(e.detail.value)
    //获取表单中提交的数据
    let info = e.detail.value

    //追加一个不带年份的生日信息
    let date = info.birthday.substring(5) //跳过2018-08-12前面5个字符取后所有
    info.date = date //更新提交信息的生日为'月-日'格式

    //获取好友id
    let id = this.data.id

    //情况1:添加新朋友
    if(id=='new'){
      //随机选一个头像
      let i = Math.ceil(Math.random()*9) //生成随机数1~9
      info.avatar = '/images/avatar/00'+i+'.jpg' //保存随机头像到提交信息中

      //往云数据库中添加当前好友信息
      birthday.add({//集合.add()
        data:info,//所添加的数据data就是整个info
        success:res=>{
          //成功后返回首页
          wx.navigateBack()
        },
        fail:err=>{
          //失败提示
          wx.showToast({
            title: '保存失败',
            duration:3000
          })
        }
      })
    }
    //好友已经存在
    else{
      //根据好友id更新好友信息
      birthday.doc(id).update({
        data:info,
        success:res=>{
          //成功后返回上一页(详情页)
          wx.navigateBack()
        },
        fail:err=>{
          //失败提示
          wx.showToast({
            title: '保存失败',
            duration:3000
          })
        }
      })
    }
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    //获取好友id
    let id = options.id
    
    //更新id数据
    this.setData({
      id:id
    })
    //如果好友已经存在
    if(id!='new'){
      //根据好友id从云数据库中获取好友信息
      birthday.doc(id).get({
        success:res=>{
          this.setData({
            info:res.data,
            data:res.data.birthday
          })
        }
      })
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})